package com.Questions.DP;


/**
 * 第 N 个泰波那契数
 */
public class leetcode1137 {
//    public int tribonacci(int n) {
//        if(n==0){
//            return 0;
//
//        }else if(n==1){
//            return 1;
//        }else if(n==2){
//            return 1;
//        }else {
//            return tribonacci(n-1)+tribonacci(n-2)+tribonacci(n-3);
//        }
//    }
    public int tribonacci(int n) {
        if(n==0){
            return 0;
        }
        if(n<=2){
            return 1;
        }
        int p = 0, q = 1, r = 1,s=2;
        for (int i = 4; i <= n; ++i) {
            p = q;
            q = r;
            r = s;
            s=p+q+r;
        }
        return s;
    }
}
